select Query در اکسس و آموزش کامل کار با آن
موضوع امروز مطلب ما select Query در اکسس و نحوه کار با آن می باشد.
کوئری ، پرس و جو ، Query و واژگانی از این دست چیزهایی هستند که به وفور در حین فراگیری نرم افزار اکسس با آنها سر و کار دارید .
محال است که منبع آموزشی را مطالعه بکنید و مطلبی را در خصوص این واژه ها در خصوص این واژه ها را در آنها مطالعه نکنید .
هر کدام از این منابع به نحوی سعی می کنند معنا و مفهوم این واژه ها را بطور کامل بیان کنند و کاربر را با کاربرد این واژه ها در محیط اکسس آشنا کنند .
سالها پیش برای خود من که در ابتدای فراگیری نرم افزار اکسس بودم پیدا کردن منبع یا منابعی که بطور کامل و یکجا تمامی مسائل و نکات مربوط به کار با کوئری ها را بطور یکجا بیان کرده باشد تبدیل به یک تلاش هر روزه شده بود .
خیلی تلاش و جستجو کردم و نتیجه این تلاش ها هم باعث شد تا بالاخره با اصول کار با این اشیا در محیط اکسس آشنا شوم و به زیر و بم نکات و ترفندهای کار با آنها در محیط اکسس بخوبی آشنا شوم .
هر چند که بالاخره در این کار موفق شدم اما خوب بسیار در این راه دچار سختی و مرارت شدم .
چرا که تقریبا هیچ سایت کتاب یا منبع آموزشی نبود که بطور کامل و جامع در خصوص کار با کوئری ها صحبت کرده باشد .
به گونه ای که با خواندن تنها یک مطلب هر چند هم که طولانی باشد مطلب را تمام و کمال فرا بگیرم و دیگر مطلبی باقی نمانده باشد که مجددا مجبور به جستجوی بین چندین و چند منبع مختلف باشم .
از آنجا که این تجربه وقت و انرژی زیادی را از من گرفت تصمیم گرفتم که این خلا در خصوص کار با کوئری ها را در اکسس را تا آنجا که می توانم برطرف کنم .
امیدوارم که بتوانم تا حد زیادی حق مطلب را در خصوص کار با کوئری ها در اکسس به جا آورم و این مطلب را به گونه ای درج کنم که تمامی زوایای مربوط به ایجاد و کار با کوئری ها را در قالب یک مطلب جامع بیاورم به گونه ای که خواننده نیازی به مراجعه به منبع دیگری برای فراگیری کار با کوئری ها در اکسس نداشته باشد .
با این مقدمه برویم به سراغ اصل موضوع که همان کار با select Query در اکسس.
آشنایی با مفهوم کلمه Query در اکسس
کلمه Query اصطلاحی است که اشاره به کلمه “ًQueerer ” در زبان انگلیسی دارد .
کلمه Query را در زبان فارسی به صورت “پرس و جو ” یا “جست و جو ” ترجمه می کنند .
Query در اکسس اشاره به یکی از اشیای بسیار مهم و کاربردی در آن دارد .
ما در اکسس ۶ شی مختلف دارم .
لیستی از این اشیا شامل موارد زیر است :
– جدول ها
– فرمها
– کوئری ها
– گزارش ها
– ماکروها
– ماژول ها
هر کدام از این اشیا کاربرد مختص به خود را دارند و پرداختن به هر کدام از آنها و آشنایی با نحوه عملکرد آنها خود مطالب جداگانه ای را می طلبد .
اما امروز می خواهیم فقط راجع به کوئری ها صحبت کنیم .
اما یک کوئری به خودی خود نمی تواند وجود مستقلی داشته باشد و وجود آنها کاملا وابسته به جداول است.
از طرفی کوئری ها می توانند با فرم ها و گزارش ها هم تعامل و ارتباط داشته باشند بنابراین به بررسی نحوه عملکرد کوئری ها و نحوه تعامل آنها با هر کدام از این اشیا می پردازیم .
و اما در خصوص خود کوئری ها و کاربرد آنها در محیط اکسس .
کوئری ها اشیایی هستند که به کمک آنها می توانیم به جستجوی بین اطلاعات موجود در یک بانک اطلاعاتی بپردازیم .
اطلاعات موجود در بانک اطلاعاتی اکسس در جداول ذخیره می شوند بنابراین کوئری ها در ارتباط مستقیم با جدول ها خواهند بود .
پس جدول ها بعنوان یکی از مهمترین منابعی هستند که توسط کوئری ها مورد جستجو قرار می گیرند تا اطلاعات مورد نظر ما را پیدا کنند .
اما جدول ها تنها منابعی نیستند که می توانند بعنوان منبع اطلاعاتی کوئری ها مورد جستجو قرار گیرند بلکه خود کوئری ها هم می توانند به نحوی بعنوان منبعی برای جستجو توسط کوئری های دیگر نیز قرار بگیرند .
پس تا به اینجای کار با مفهوم کلمه کوئری آشنا شدیم و با منابعی که می توانند اطلاعات مورد نظر کوئری ها را فراهم کنند آشنا شدیم .
در ادامه بحث را در دو زمینه مختلف ادامه خواهیم و با هم به بررسی دو موضوع در خصوص کار با کوئری ها می پردازیم .
این گزینه ها شامل موارد زیر هستند .
۱- آشنایی با انواع کوئری ها
۲- آشنایی با انواع راهها و روش های مختلف ایجاد کوئری ها
یک مطلب خواندنی دیگر : ساب کوئری در اکسس همه چیزهایی که باید بدانید
آشنایی با انواع کوئری ها
ما بطور کلی در اکسس ۶ نوع مختلف از کوئری ها را داریم که هر کدام برای کاری طراحی شده و کاربرد دارند .
پرداختن به همه این کوئری ها در این مطلب نخواهد گنجید اما امروز فقط به بررسی و معرفی ساده ترین نوع از کوئری که همان کوئری نوع Select است می پردازیم .
Select Query ساده ترین نوع کوئری است که در اکسس وجود دارد .
این نوع از کوئری در واقع بعنوان یک کوئری پایه می باشد .
بگونه ای که وقتی از طریق گزینه Design در سربرگ Create وارد محیط کوئری می شوید اکسس ۶ گزینه را برای ایجاد کوئری را در اختیار شما قرار می دهد که بصورت پیشفرض گزینه Select Query به حالت انتخاب شده است .
همانطور که گفتیم وقتی شما گزینه Design Query را انتخاب می کنید اکسس شما را وارد محیط طراحی کوئری ها می کند .
این محیط را در اصطلاح QBE که مخفف عبارت Query By Example می نامند .
اما فلسفه محیط QBE و گزینه های مربوط به آن چیست ؟
واقعیت امر این است بسیاری از کاربران اکسس باید ممنون وجود همچین محیطی در اکسس باشند .
اگر این محیط در اکسس نبود ما مجبور بودیم تمام پرس و جو هایی را که لازم داشتیم خودمان و با استفاده از خطوط کد SQL ایجاد کنیم .
اما از آنجا که کدنویسی و برنامه نویسی چه در زبان SQL چه هر زبان دیگری خود مهارتی سوا را می طلبد که ممکن است کاربران اکسس با آن آشنایی نداشته باشند بنابراین اکسس برای سهولت در کار و اینکه به راحتی بتوانند کوئری های خود را ایجاد کنند می توانند در این محیط به ایجاد کوئری های خود بپردازند .
جالب است که بدانید که هر تنظیماتی را که در این محیط انجام می دهید اکسس آنها را تبدیل به خطوط کد SQL می کند .
اما این خطوط کد از دید کاربر پنهان هستند و کاربر بطور مستقیم در ایجاد آنها دخالتی ندارد .
اما در نهایت اکسس این خطوط کد ایجاد شده را خوانده و اجرا می کند .
با این توضیحات با هم به سراغ مراحل ایجاد یک کوئری از نوع SELECT می پردازیم و تمامی زوایای مربوط به این نوع از کوئری را با هم مورد بررسی قرار می کنیم .
یک پیشنهاد خواندنی دیگر : Union Query در اکسس آشنایی و کار با آن +مثال های عملی
.مراحل ایجاد یک کوئری از نوع SELECT
ما برای ایجاد یک کوئری چه از نوع SELECT چه نوع دیگر دو راه در پیش داریم .
راه اول استفاده از گزینه Query Wizard است و راه دوم هم استفاده از Query Design می باشد .
اما از آنجا که استفاده از روش دوم متداولتر بوده و امکانات بیشتری را در اختیار ما قرار می دهد ما از این روش استفاده می کنیم .
بعد از اینکه بر روی گزینه Design Query کلیک می کنیم بلافاصله اکسس ما را به محیط طراحی کوئری منتقل می کند .
به محض ورود به این محیط یک پنجره برای ما باز می شود .
اکسس در این پنجره لیستی از تمام جدول ها و یا کوئری هایی را که در حال حاضر در نرم افزار وجود دارد را به ما نمایش می دهد .
اکسس از ما می خواهد انتخاب کنیم که قرار است کدام جدول یا کوئری را که حاوی اطلاعات است را مورد جستجو قرار دهیم .
بنابراین در لیست مورد نظر کافی است بر روی نام جدول و یا کوئری خود یک دابل کلیک کنیم .
با این کار جدول مربوطه به محیط اصلی ایجاد کوئری منتقل می شود .
بعد از اینکه منبع جستجوی خود را مشخص کردیم باید به سراغ طراحی خود کوئری و گزینه های مربوط به آن برویم .
برای این کار از محیط طراحی جدول مانندی که در زیر مشاهده می کنید استفاده می نماییم .
این جدول دارای چند ردیف است که در زیر به نحوه کار و تنظیم با آنها می پردازیم :
– ردیف Field :
در این ردیف ما باید فیلدهایی را که می خواهیم در ساختار کوئری ما بیاید و آنها را مورد جستجو قرار دهیم را انتخاب می کنیم .
اگر در مرحله اول یک جدول را انتخاب کرده باشیم اکسس نام فیلدهای آن را برای ما در این ردیف لیست می کند و هر کدام از فیلدها را می توان انتخاب نمود .
– ردیف Table :
در این ردیف نام جدول یا کوئری که فیلد مربوط به آن را در مرحله قبل انتخاب کردیم را درج می کنیم .
-ردیف Sort
در این ردیف تعیین می کنیم که چیدمان اطلاعات ما بصورت نزولی یا صعودی باشد .
ردیف criteria :
در این ردیف می توان شرط یا شرطهایی را برای کوئری خود تعریف کنیم
ردیف OR :
این ردیف در ارتباط با ردیف شرط می باشد که در مثال های بعدی به بررسی بهتر آن می پردازیم .
نحوه ایجاد یک select Query در اکسس با استفاده از یک مثال عملی
گفتیم برای اینکه یک کوئری را ایجاد کنیم نیاز به یک منبع اطلاعاتی داریم
برای این منظور اطلاعات موجود در جدول زیر را در نظر بگیرید .
ما می خواهیم از این جدول یک کوئری ایجاد کنیم .
از سربرگ Creat گزینه Design Query را انتخاب می کنیم .
از پنجره ای که برای ما باز می شود بر روی جدول “tblbooks” دابل کلیک می کنیم تا به محیط طراحی کوئری ما اضافه شود .
اکنون باید به سراغ طراحی کوئری خود برویم.
ابتدا باید آیتم هایی را که می خواهیم کوئری خود را بر مبنای آنها ایجاد کنیم را به محیط کوئری خود اضافه کنیم .
برای این منظور دو راه در پیش داریم :
راه اول اینکه بر روی نام فیلدی که در قسمت بالایی برای ما نمایش داده می شود یک دابل کلیک کنیم تا به محیط طراحی کوئری ما اضافه شود .
اگر بخواهیم که تمامی فیلدها در کوئری ما لحاظ شوند کافی است بر روی علامت ستاره موجود در بالای فهرست فیلدها یک دابل کلیک کنیم .
راه دوم برای وارد کردن نام فیلدها هم این است که نام هر فیلد را در قسمت Field انتخاب کنیم
بعد از اینکه فیلدها را به کوئری خود معرفی کردیم می توانیم با کلیک بر روی گزینه Run کوئری خود را اجرا کنیم .
ما در اینجا کوئری خود را به ساده ترین شکل ممکن اجرا کردیم .
اما در اغلب اوقات ما به دنبال جستجوی عبارت خاصی در جدول خود هستیم .
بعنوان مثال فرض کنید ما می خواهیم به جستجوی نویسنده ای به نام “شریعتی ” بگردیم .
بنابراین باید برای کوئری خود یک شرط را در نظر بگیریم .
در نظر گرفتن شرط در Select Query
برای تعریف شرط در یک کوئری به سراغ ردیف مربوط به Criteria می رویم .
در این قسمت می توانیم برای هر کدام از فیلدهای موجود یک شرط تعریف کنیم .
بعنوان مثال برای جستجوی نویسنده مورد نظر خود در قسمت مربوطه می توانیم بصورت زیر عمل کنیم .
اگر این کوئری را اجرا کنیم فقط اطلاعات مربوط به همین نویسنده برای ما نمایش داده خواهد شد .
ما در اینجا یک شرط را برای کوئری خود در نظر گرفتیم .
اما گاهی اوقات پیش می آید که می خواهیم بیشتر از یک شرط را در جست و جوی خود اعمال کنیم .
در اینجا دو حالت پیش می آید .
– یا اینکه می خواهیم همه شرط هایی را که ما تعیین می کنیم بطور همزمان در جست و جوی ما اعمال شوند .
بعنوان مثال می خواهیم یک جست و جو ایجاد کنیم به شرط اینکه نام نویسنده مورد نظر “شریعتی” بوده و در عین حال عنوان کتاب مربوط به این نویسنده هم “زن در اسلام ” باشد .
برای این منظور همانند تصویر زیر عمل می کنیم .
حالت دوم این است که ما چند شرط را در نظر می گیریم اما نیازی نیست که همه شرطهای ما بطور همزمان در فرآیند جستجو در نظر گرفته شود .
بعنوان مثال می خواهیم جستو جویی ایجاد کنیم و لیست کتابهایی را پیدا کنیم که نویسنده آنها “شریعتی” یا “مطهری ” باشد.
در این حالت یکی از شروط را در قسمت OR درج می کنیم .
کوئری که تا به اینجا ایجاد کردیم چند ایراد می تواند داشته باشد .
۱- اولین اشکال این است که ما باید نام کامل نویسنده را در قسمت شرط درج کنیم .
بعنوان مثال اگر برای نام نویسنده ” علی شریعتی ” فقط از کلمه “شریعتی ” استفاده کنیم کوئری ما کار نخواهد کرد .
در صورتی که در هر دو مورد منظور و هدف ما یک نویسنده است .
برای حل این مشکل می توانیم از عبارت Like استفاده کنیم
تصویر زیر این امر را نشان می دهد .
پس با این ترفند مشکل اول خود را حل کردیم
اکنون به سراغ دومین مشکل برویم .
مشکل دوم این است که ما هر بار برای اجرای کوئری خود اگر بخواهیم شرط جدیدی را تعریف کنیم باید به محیط طراحی کوئری برگردیم و شرط جدید را وارد کنیم .
این کار بنابر دلایل متعددی اصلا توصیه نمی شود .
بنابراین به سراغ روشی می رویم که با استفاده از آن بدون اینکه نیاز باشد به محیط طراحی کوئری وارد شویم شرط های خود را تغییر دهیم .
این روش به نام پارامتر کوئری نامیده می شود .
استفاده از قابلیت پارامتر کوئری در select Query در اکسس
قابلیتی که از آن تحت عنوان پارامتر نام می بریم این امکان را به ما می دهد که شرط های مورد نظر برای یک جستجو را در قالب یک کادر از کاربر دریافت کنیم بدون اینکه نیازی به ورود کاربر به محیط زراحی کوئری باشد .
برای این کار فقط کافی است در قسمت Criteria فیلد مورد نظر خود از یک پیغام مناسب استفاده کنیم و این پیغام را نیز در داخل دو [ ] قرار دهیم .
بعنوان مثال برای جستجو بر اساس نام نویسنده می توانیم این گزینه را همانند تصویر زیر تنظیم کنید .
با انجام این کار هر گاه که کاربر این کوئری را اجرا کند کادر پیغامی همانند تصویر زیر برای وی به نمایش در می آید .
اکنون کاربر کافی است که نام نویسنده مورد نظر خود را وارد کند تا جستجو بر مبنای عبارت موجود در این کادر در جدول هدف ما انجام شود .
اما خوب این کار هم یک نقص کوچک دارد و آن هم اینکه کاربر باید نام نویسنده را بطور کامل وارد کند .
اما با یک تغییر می توان کاری کرد که کاربر فقط با وارد کردن بخشی از نام نویسنده نیز عمل جستجو برای وی انجام شود
در اینجا سعی شد در خصوص کوئری select Query در اکسس و نحوه کار با آنها نکاتی را ارائه کنیم .
در آینده باز هم در این خصوص مطالبی را در این سایت خواهیم خواند .
مطالب زیر را حتما مطالعه کنید
مفهوم join در SQL و دیتابیس اکسس +ویدئو
ساخت برچسب در اکسس💥چطور آنها را ایجاد و مدیریت کنیم ؟
ریبون ها در اکسس💥از مخفی کردن تا مدیریت کردن آنها
چطوری متن ها و تصاویر را بصورت متحرک در اکسس نمایش بدهیم ؟
فرمت دهی نوشته ها در اکسس | کاربرد + مثالها
۵ ویژگی در فرم های اکسس که کمتر از آنها خبر داشتید .
7 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
خیلی عالی بود، ممنون
سلام توضیحات کاربردی و واضح است. ممنون . یک سئوال . در اکسس میشه مانند اکسل فرمول نوشت ؟ مثلا از روی اطلاعات (ورودیهای) یک جدول جدول یا جدولهای دیگر بر اساس فرمول که داده ایم داده بگیرند ( پر شوند ، تکمیل شوند )
سلام در اکسس به آن معنایی که در اکسل فرمول نویسی می کنیم امکان فرمول نویسی مستقیم نداریم ولی از طریق برنامه نویسی و کدهای VBA می شود همه اینها را کرد
سلام .مشاوره تلفنی دارید؟
سلام از طریق اینستاگرام می تونید در ارتباط باشید .
مطالبتان بسار عالی و واضح بودند از شما ممنونم و موفق باشید
ممنون از همراهی و اظهار نظر شما